﻿using EnetaMvc.Core.Domain.News;
using EnetaMvc.Infrastructure;

namespace EnetaMvc.Core.Repositories
{
    public interface IBlogPostRepository
    {
        PagedResult<BlogPost> ListPublishedBlogPosts(int page, int pageSize);
        PagedResult<BlogPost> ListBlogPosts(int page, int pageSize);
        PagedResult<BlogPost> ListPostsForBlog(long blogId, int page, int pageSize);
        PagedResult<BlogPost> ListPublishedPostsForBlog(long blogId, int page, int pageSize);
        BlogPost GetBlogPostById(long id);
        BlogPost GetPublishedBlogPost(long id);
        void SaveBlogPost(BlogPost blogPost);
        bool BlogPostExists(string infoSourceUrl, long blogId);
    }
}
